package me.zhengjie.modules.lock.service.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import com.zelk.smartlock.common.constant.Constant;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

@ApiModel("门锁详情绑定信息")
@Data
@JsonInclude(value = JsonInclude.Include.ALWAYS)
public class LockDeviceBindInfoDTO implements Serializable {
    private static final long serialVersionUID = 1L;

    @ApiModelProperty(value = "门锁绑定ID")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long lockOwnerId;

    @ApiModelProperty(value = "门锁管理员-partnerId")
    @JsonSerialize(using = ToStringSerializer.class)
    private Long partnerId;
//    @ApiModelProperty(value = "门锁管理员名称")
//    private String partnerName;

    @ApiModelProperty(value = "门锁别名")
    private String alias;

    @ApiModelProperty(value = "true：启用（默认），false：禁用")
    private Boolean enable;

    @ApiModelProperty(value = "绑定时间")
    @JsonFormat(pattern = Constant.DATA_FORMAT, timezone = Constant.TIME_ZONE)
    private LocalDateTime bindTime;

    @ApiModelProperty(value = "备注")
    private String remark;
}
